home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 22 / CU Amiga Magazine's Super CD-ROM 22 (1998)(EMAP Images)(GB)[!][issue 1998-05].iso / PowerPC / Programming / PPCSmallEiffel / bin_c / clean.c < prev    next >
Encoding:
C/C++ Source or Header  |  1998-01-16  |  27.3 KB  |  1,103 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.82)      --
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                 http://www.loria.fr/SmallEiffel              --
  7. */
  8. #include "clean.h"
  9. T7 M7={NULL,0,0};
  10. T675 M675={0,NULL,0,0};
  11. T441 M441=NULL;
  12. T650 M650=NULL;
  13. T830 M830=NULL;
  14. T479 M479={0};
  15. T670 M670=0;
  16. T306 M306={0};
  17. T927 M927={NULL,0,0};
  18. T52 M52={NULL,0,0,0};
  19. void r2append_in(int C,T0* a1){
  20. int _i=0;
  21. int _val=0;
  22. /*IF*/if ((C)==(0)) {
  23. r7extend(((T7*)a1),'0');
  24. }
  25. else {
  26. /*IF*/if ((C)>(0)) {
  27. _i=((((T7*)((T7*)a1)))->_count/*4*/)+(1);
  28. _val=C;
  29. while (!((_val)==(0))) {
  30. r7extend(((T7*)a1),r2digit((_val)%(10)));
  31. _val=(_val)/(10);
  32. }
  33. }
  34. else {
  35. r7extend(((T7*)a1),'\55');
  36. _i=((((T7*)((T7*)a1)))->_count/*4*/)+(1);
  37. _val=C;
  38. while (!((_val)==(0))) {
  39. r7extend(((T7*)a1),r2digit(-((_val)%(10))));
  40. _val=(_val)/(10);
  41. }
  42. }
  43. /*FI*/_val=(((T7*)((T7*)a1)))->_count/*4*/;
  44. while (!((_i)>=(_val))) {
  45. r7swap(((T7*)a1),_i,_val);
  46. _val=(_val)-(1);
  47. _i=(_i)+(1);
  48. }
  49. }
  50. /*FI*/}
  51. char r2digit(int C){
  52. char R=0;
  53. R=((char)((C)+(((unsigned char)'0'))));
  54. return R;
  55. }
  56. int r6_ix_not(int C){
  57. int R=0;
  58. /*IF*/if (C) {
  59. }
  60. else {
  61. R=1;
  62. }
  63. /*FI*/return R;
  64. }
  65. char r3to_lower(char C){
  66. char R=0;
  67. /*IF*/if ((((unsigned char)C))<(65)) {
  68. R=C;
  69. }
  70.  else if ((((unsigned char)C))>(90)) {
  71. R=C;
  72. }
  73. else {
  74. R=((char)((((unsigned char)C))+(32)));
  75. }
  76. /*FI*/return R;
  77. }
  78. int r3is_digit(char C){
  79. int R=0;
  80. {int z1=C;
  81.  
  82. if(((48<=z1)&&(z1<=57))){
  83. R=1;
  84. }
  85. }
  86. return R;
  87. }
  88. char r3to_upper(char C){
  89. char R=0;
  90. /*IF*/if ((((unsigned char)C))<(97)) {
  91. R=C;
  92. }
  93.  else if ((((unsigned char)C))>(122)) {
  94. R=C;
  95. }
  96. else {
  97. R=((char)((((unsigned char)C))-(32)));
  98. }
  99. /*FI*/return R;
  100. }
  101. int r3is_letter(char C){
  102. int R=0;
  103. {int z1=C;
  104.  
  105. if(((65<=z1)&&(z1<=90))||((97<=z1)&&(z1<=122))){
  106. R=1;
  107. }
  108. }
  109. return R;
  110. }
  111. void r400set_all_with(T400 C,T0* a1,int a2){
  112. int _i=0;
  113. _i=a2;
  114. while (!((_i)<(0))) {
  115. (C)[_i]=(a1);
  116. _i=(_i)-(1);
  117. }
  118. }
  119. int r400equal_like(T0* a1,T0* a2){
  120. int R=0;
  121. /*IF*//*AF*//*AF*/if ((a1)==((void*)(a2))) {
  122. R=1;
  123. }
  124.  else if (((a1)==((void*)(NULL)))||((a2)==((void*)(NULL)))) {
  125. }
  126. else {
  127. R=r7is_equal(((T7*)a1),a2);
  128. }
  129. /*FI*/return R;
  130. }
  131. int r400index_of(T400 C,T0* a1,int a2){
  132. int R=0;
  133. while (!(((R)>(a2))||(r400equal_like(a1,(C)[R])))) {
  134. R=(R)+(1);
  135. }
  136. return R;
  137. }
  138. int r9fast_memcmp(T9 C,T9 a1,int a2){
  139. int R=0;
  140. int _i=0;
  141. R=((C)[0])==((a1)[0]);
  142. _i=(a2)-(1);
  143. while (!(((_i)==(0))||(!(R)))) {
  144. R=((C)[_i])==((a1)[_i]);
  145. _i=(_i)-(1);
  146. }
  147. return R;
  148. }
  149. int r9fast_index_of(T9 C,char a1,int a2){
  150. int R=0;
  151. while (!(((R)>(a2))||((a1)==((C)[R])))) {
  152. R=(R)+(1);
  153. }
  154. return R;
  155. }
  156. void r9copy_from(T9 C,T9 a1,int a2){
  157. int _i=0;
  158. _i=a2;
  159. while (!((_i)<(0))) {
  160. (C)[_i]=((a1)[_i]);
  161. _i=(_i)-(1);
  162. }
  163. }
  164. T9 r9realloc(T9 C,int a1,int a2){
  165. T9 R=NULL;
  166. R=calloc(a2,sizeof(char));
  167. r9copy_from(R,C,(a1)-(1));
  168. return R;
  169. }
  170. void r7extend(T7* C,char a1){
  171. int _new_capacity=0;
  172. /*IF*/if (((((T7*)C))->_capacity/*8*/)>((((T7*)C))->_count/*4*/)) {
  173. }
  174.  else if (((((T7*)C))->_capacity/*8*/)==(0)) {
  175. C->_capacity=32;
  176. C->_storage=calloc((((T7*)C))->_capacity/*8*/,sizeof(char));
  177. }
  178. else {
  179. _new_capacity=(2)*((((T7*)C))->_capacity/*8*/);
  180. C->_storage=r9realloc((((T7*)C))->_storage/*0*/,(((T7*)C))->_capacity/*8*/,_new_capacity);
  181. C->_capacity=_new_capacity;
  182. }
  183. /*FI*/C->_count=((((T7*)C))->_count/*4*/)+(1);
  184. /*[IRF3.5put*/((((T7*)C))->_storage/*0*/)[((((T7*)C))->_count/*4*/)-(1)]=(a1);
  185. /*]*/
  186. }
  187. void r7set_last(T7* C,char a1){
  188. /*IF*/if ((((((T7*)C))->_count/*4*/)==(0))||((/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[((((T7*)C))->_count/*4*/)-(1)]/*)*/)!=(a1))) {
  189. r7extend(C,a1);
  190. }
  191. /*FI*/}
  192. /*No:STRING.remove_suffix*/
  193. void r7to_lower(T7* C){
  194. int _i=0;
  195. _i=(((T7*)C))->_count/*4*/;
  196. while (!((_i)==(0))) {
  197. /*[IRF3.5put*/((((T7*)C))->_storage/*0*/)[(_i)-(1)]=(r3to_lower(/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[(_i)-(1)]/*)*/));
  198. /*]*/
  199. _i=(_i)-(1);
  200. }
  201. }
  202. void r7make(T7* C,int a1){
  203. /*IF*/if ((a1)>(0)) {
  204. /*IF*/if (((((T7*)C))->_capacity/*8*/)<(a1)) {
  205. C->_storage=calloc(a1,sizeof(char));
  206. C->_capacity=a1;
  207. }
  208. /*FI*/}
  209. /*FI*/C->_count=0;
  210. }
  211. void* r7to_external(T7* C){
  212. void* R=0;
  213. /*IF*/if (((((T7*)C))->_capacity/*8*/)>((((T7*)C))->_count/*4*/)) {
  214. C->_count=((((T7*)C))->_count/*4*/)+(1);
  215. /*IF*/if ((/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[((((T7*)C))->_count/*4*/)-(1)]/*)*/)!=('\0')) {
  216. /*[IRF3.5put*/((((T7*)C))->_storage/*0*/)[((((T7*)C))->_count/*4*/)-(1)]=('\0');
  217. /*]*/
  218. }
  219. /*FI*/}
  220. else {
  221. r7extend(C,'\0');
  222. }
  223. /*FI*/C->_count=((((T7*)C))->_count/*4*/)-(1);
  224. R=((void*)(((T7*)C))->_storage/*0*/);
  225. return R;
  226. }
  227. /*No:STRING.item*/
  228. /*No:STRING.clear*/
  229. /*No:STRING.storage*/
  230. T0* r7twin(T7* C){
  231. T0* R=NULL;
  232. R=malloc(sizeof(*C));
  233. *((T7*)R)=M7;
  234. r7copy(((T7*)R),((T0*)C));
  235. return R;
  236. }
  237. int r7is_equal(T7* C,T0* a1){
  238. int R=0;
  239. /*IF*/if ((C)==((void*)(a1))) {
  240. R=1;
  241. }
  242.  else if (((((T7*)C))->_count/*4*/)==((((T7*)((T7*)a1)))->_count/*4*/)) {
  243. /*IF*/if (((((T7*)C))->_count/*4*/)>(0)) {
  244. R=r9fast_memcmp((((T7*)C))->_storage/*0*/,(((T7*)((T7*)a1)))->_storage/*0*/,(((T7*)C))->_count/*4*/);
  245. }
  246. else {
  247. R=1;
  248. }
  249. /*FI*/}
  250. /*FI*/return R;
  251. }
  252. void r7swap(T7* C,int a1,int a2){
  253. char _tmp=0;
  254. _tmp=/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[(a1)-(1)]/*)*/;
  255. /*[IRF3.5put*/((((T7*)C))->_storage/*0*/)[(a1)-(1)]=(/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[(a2)-(1)]/*)*/);
  256. /*]*/
  257. /*[IRF3.5put*/((((T7*)C))->_storage/*0*/)[(a2)-(1)]=(_tmp);
  258. /*]*/
  259. }
  260. char r7last(T7* C){
  261. char R=0;
  262. R=/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[((((T7*)C))->_count/*4*/)-(1)]/*)*/;
  263. return R;
  264. }
  265. /*No:STRING.capacity*/
  266. int r7has_suffix(T7* C,T0* a1){
  267. int R=0;
  268. int _i2=0;
  269. int _i1=0;
  270. /*IF*/if (((((T7*)((T7*)a1)))->_count/*4*/)<=((((T7*)C))->_count/*4*/)) {
  271. _i1=(((((T7*)C))->_count/*4*/)-((((T7*)((T7*)a1)))->_count/*4*/))+(1);
  272. _i2=1;
  273. while (!((((_i1)>((((T7*)C))->_count/*4*/))||((_i2)>((((T7*)((T7*)a1)))->_count/*4*/)))||((/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[(_i1)-(1)]/*)*/)!=(/*(IRF4.6item*/((((T7*)((T7*)a1)))->_storage/*0*/)[(_i2)-(1)]/*)*/)))) {
  274. _i1=(_i1)+(1);
  275. _i2=(_i2)+(1);
  276. }
  277. R=(_i1)>((((T7*)C))->_count/*4*/);
  278. }
  279. /*FI*/return R;
  280. }
  281. int r7has(T7* C,char a1){
  282. int R=0;
  283. R=(r7index_of(C,a1))!=(((((T7*)C))->_count/*4*/)+(1));
  284. return R;
  285. }
  286. void r7copy(T7* C,T0* a1){
  287. C->_count=(((T7*)((T7*)a1)))->_count/*4*/;
  288. /*IF*/if (((((T7*)C))->_count/*4*/)>(0)) {
  289. /*IF*/if (((((T7*)C))->_capacity/*8*/)<((((T7*)C))->_count/*4*/)) {
  290. C->_storage=calloc((((T7*)C))->_count/*4*/,sizeof(char));
  291. C->_capacity=(((T7*)C))->_count/*4*/;
  292. }
  293. /*FI*/r9copy_from((((T7*)C))->_storage/*0*/,(((T7*)((T7*)a1)))->_storage/*0*/,((((T7*)C))->_count/*4*/)-(1));
  294. }
  295. /*FI*/}
  296. /*No:STRING.put*/
  297. /*No:STRING.count*/
  298. void r7to_upper(T7* C){
  299. int _i=0;
  300. _i=(((T7*)C))->_count/*4*/;
  301. while (!((_i)==(0))) {
  302. /*[IRF3.5put*/((((T7*)C))->_storage/*0*/)[(_i)-(1)]=(r3to_upper(/*(IRF4.6item*/((((T7*)C))->_storage/*0*/)[(_i)-(1)]/*)*/));
  303. /*]*/
  304. _i=(_i)-(1);
  305. }
  306. }
  307. void r7remove_last(T7* C,int a1){
  308. C->_count=((((T7*)C))->_count/*4*/)-(a1);
  309. }
  310. int r7index_of(T7* C,char a1){
  311. int R=0;
  312. R=(1)+(r9fast_index_of((((T7*)C))->_storage/*0*/,a1,((((T7*)C))->_count/*4*/)-(1)));
  313. return R;
  314. }
  315. void r7append(T7* C,T0* a1){
  316. int _i=0;
  317. _i=1;
  318. while (!((_i)>((((T7*)((T7*)a1)))->_count/*4*/))) {
  319. r7extend(C,/*(IRF4.6item*/((((T7*)((T7*)a1)))->_storage/*0*/)[(_i)-(1)]/*)*/);
  320. _i=(_i)+(1);
  321. }
  322. }
  323. /*No:FIXED_ARRAY[STRING].clear_all*/
  324. /*No:FIXED_ARRAY[STRING].set_all_with*/
  325. void r927make(T927* C,int a1){
  326. /*IF*/if ((a1)==(0)) {
  327. C->_upper=-(1);
  328. }
  329.  else if (((((T927*)C))->_capacity/*4*/)==(0)) {
  330. C->_storage=calloc(a1,sizeof(T0*));
  331. C->_capacity=a1;
  332. C->_upper=(a1)-(1);
  333. }
  334.  else if (((((T927*)C))->_capacity/*4*/)<(a1)) {
  335. C->_storage=calloc(a1,sizeof(T0*));
  336. C->_capacity=a1;
  337. C->_upper=(a1)-(1);
  338. }
  339. else {
  340. C->_upper=(a1)-(1);
  341. /*[IRF3.6clear_all*/{T927* C1=C;
  342. T0* __value=NULL;
  343. /*[IRF3.6set_all_with*/{T927* C2=C1;
  344. T0* c1=__value;
  345. r400set_all_with((((T927*)C2))->_storage/*0*/,c1,(((T927*)C2))->_upper/*8*/);
  346. }/*]*/
  347. }/*]*/
  348. }
  349. /*FI*/}
  350. /*No:FIXED_ARRAY[STRING].item*/
  351. /*No:FIXED_ARRAY[STRING].storage*/
  352. /*No:FIXED_ARRAY[STRING].capacity*/
  353. /*No:FIXED_ARRAY[STRING].put*/
  354. /*No:FIXED_ARRAY[STRING].upper*/
  355. T0* r52item(T52* C,int a1){
  356. T0* R=NULL;
  357. R=((((T52*)C))->_storage/*0*/)[(a1)-((((T52*)C))->_lower/*12*/)];
  358. return R;
  359. }
  360. /*No:ARRAY[STRING].storage*/
  361. /*No:ARRAY[STRING].capacity*/
  362. /*No:ARRAY[STRING].lower*/
  363. /*No:ARRAY[STRING].upper*/
  364. int r52index_of(T52* C,T0* a1){
  365. int R=0;
  366. R=((((T52*)C))->_lower/*12*/)+(r400index_of((((T52*)C))->_storage/*0*/,a1,((((T52*)C))->_upper/*8*/)-((((T52*)C))->_lower/*12*/)));
  367. return R;
  368. }
  369. void r675connect_to(T675* C,T0* a1){
  370. C->_input_stream=fopen(r7to_external(((T7*)a1)),"r");
  371. /*IF*/if ((NULL!=(((T675*)C))->_input_stream/*8*/)) {
  372. C->_push_back_flag=0;
  373. C->_memory=((unsigned char)'\40');
  374. C->_path=a1;
  375. }
  376. /*FI*/}
  377. T0*oBC762last_string=NULL;
  378. /*No:STD_FILE_READ.push_back_flag*/
  379. /*No:STD_FILE_READ.make*/
  380. void r675disconnect(T675* C){
  381. fclose((((T675*)C))->_input_stream/*8*/);
  382. C->_path=NULL;
  383. }
  384. /*No:STD_FILE_READ.path*/
  385. void r675read_character(T675* C){
  386. /*IF*/if ((((T675*)C))->_push_back_flag/*0*/) {
  387. C->_push_back_flag=0;
  388. }
  389. else {
  390. C->_memory=getc((FILE*)((((T675*)C))->_input_stream/*8*/));
  391. }
  392. /*FI*/}
  393. /*No:STD_FILE_READ.is_connected*/
  394. /*No:STD_FILE_READ.last_character*/
  395. void r675read_line_in(T675* C,T0* a1){
  396. int _mem=0;
  397. r675read_character(C);
  398. _mem=(((T675*)C))->_memory/*12*/;
  399. while (!(((_mem)==((EOF)))||((_mem)==(((unsigned char)'\n'))))) {
  400. r7extend(((T7*)a1),((char)(_mem)));
  401. _mem=getc((FILE*)((((T675*)C))->_input_stream/*8*/));
  402. }
  403. C->_memory=_mem;
  404. }
  405. int r675end_of_input(T675* C){
  406. int R=0;
  407. /*IF*/if (!((((T675*)C))->_push_back_flag/*0*/)) {
  408. R=((((T675*)C))->_memory/*12*/)==((EOF));
  409. }
  410. /*FI*/return R;
  411. }
  412. void r675read_line(T675* C){
  413. /*[IRF3.3clear*/((((T7*)(((T7*)(oBC762last_string)))))->_count)=(0);
  414. /*]*/
  415. r675read_line_in(C,oBC762last_string);
  416. }
  417. /*No:STD_FILE_READ.input_stream*/
  418. /*No:STD_FILE_READ.memory*/
  419. /*No:STD_ERROR.make*/
  420. /*No:STD_ERROR.flush*/
  421. void r441put_string(T441* C,T0* a1){
  422. int _i=0;
  423. _i=1;
  424. while (!((_i)>((((T7*)((T7*)a1)))->_count/*4*/))) {
  425. /*[IRF3.6put_character*/{T441* C1=C;
  426. char b1=/*(IRF4.6item*/((((T7*)((T7*)a1)))->_storage/*0*/)[(_i)-(1)]/*)*/;
  427. putc(b1,((FILE*)(stderr)));
  428. }/*]*/
  429. _i=(_i)+(1);
  430. }
  431. }
  432. /*No:STD_ERROR.put_character*/
  433. /*No:CLEAN.dos_system*/
  434. /*No:CLEAN.fz_system_se*/
  435. /*No:CLEAN.fz_sys*/
  436. T0*oBC364tmp_file_read=NULL;
  437. /*No:CLEAN.unix_system*/
  438. /*No:CLEAN.exit_failure_code*/
  439. /*No:CLEAN.vms_system*/
  440. int fBC364small_eiffel_directory=0;
  441. T0*oBC364small_eiffel_directory=NULL;
  442. T0* r650small_eiffel_directory(T650* C){
  443. if (fBC364small_eiffel_directory==0){
  444. T0* R=NULL;
  445. char _slash=0;
  446. int _i=0;
  447. fBC364small_eiffel_directory=1;
  448. R=r650get_environment_variable(C,((T0*)ms121_470));
  449. /*IF*/if ((R)==((void*)(NULL))) {
  450. R=r7twin(((T7*)(((T0*)ms121_470))));
  451. r7to_upper(((T7*)R));
  452. R=r650get_environment_variable(C,R);
  453. /*IF*/if ((R)!=((void*)(NULL))) {
  454. r7to_upper(((T7*)(((T0*)ms121_470))));
  455. }
  456. /*FI*/}
  457. /*FI*//*IF*/if ((R)==((void*)(NULL))) {
  458. R=((T0*)ms1_364);
  459. }
  460. /*FI*/_i=(((T7*)((T7*)R)))->_count/*4*/;
  461. while (!((_i)<(0))) {
  462. _slash=/*(IRF4.6item*/((((T7*)((T7*)R)))->_storage/*0*/)[(_i)-(1)]/*)*/;
  463. /*IF*/if ((r3is_letter(_slash))||(r3is_digit(_slash))) {
  464. _i=(_i)-(1);
  465. }
  466. else {
  467. _i=-(1);
  468. }
  469. /*FI*/}
  470. /*IF*/if ((_i)==(0)) {
  471. r7extend(((T7*)R),'\57');
  472. }
  473.  else if (!((r7last(((T7*)R)))==(_slash))) {
  474. r7extend(((T7*)R),_slash);
  475. }
  476. /*FI*/oBC364small_eiffel_directory=R;}
  477. return oBC364small_eiffel_directory;}
  478. int fBC364make_suffix=0;
  479. T0*oBC364make_suffix=NULL;
  480. T0* r650make_suffix(T650* C){
  481. if (fBC364make_suffix==0){
  482. T0* R=NULL;
  483. fBC364make_suffix=1;
  484. /*IF*/if ((((T0*)ms14_364))==((void*)(r650system_name(C)))) {
  485. R=((T0*)ms33_364);
  486. }
  487.  else if ((((T0*)ms19_364))==((void*)(r650system_name(C)))) {
  488. R=((T0*)ms34_364);
  489. }
  490.  else if ((((T0*)ms18_364))==((void*)(r650system_name(C)))) {
  491. R=((T0*)ms35_364);
  492. }
  493.  else if ((((T0*)ms16_364))==((void*)(r650system_name(C)))) {
  494. R=((T0*)ms36_364);
  495. }
  496. else {
  497. R=((T0*)ms37_364);
  498. }
  499. /*FI*/oBC364make_suffix=R;}
  500. return oBC364make_suffix;}
  501. /*No:CLEAN.amiga_system*/
  502. void r650make(T650* C){
  503. T0* _str=NULL;
  504. int _arg=0;
  505. /*IF*/if ((/*(IRF4.9argument_count*/(((T927*)((T927*)(r650command_arguments()))))->_upper/*8*//*)*/)<(1)) {
  506. r441put_string(((T441*)(oBC1std_error)),((T0*)ms1_650));
  507. r650print_help(C,((T0*)ms2_650));
  508. exit(1);
  509. }
  510. /*FI*/_arg=1;
  511. while (!((_arg)>(/*(IRF4.9argument_count*/(((T927*)((T927*)(r650command_arguments()))))->_upper/*8*//*)*/))) {
  512. _str=r650argument(_arg);
  513. /*IF*/if (r7is_equal(ms3_650,_str)) {
  514. /*[IRF3.3set_verbose*/((((T306*)(((T306*)(oBC364echo)))))->_verbose)=(1);
  515. /*]*/
  516. }
  517. else {
  518. /*IF*/if (r7has_suffix(((T7*)_str),((T0*)ms25_364))) {
  519. /*[IRF3.6remove_suffix*/{T7* C1=((T7*)_str);
  520. T0* b1=((T0*)ms25_364);
  521. r7remove_last(C1,(((T7*)((T7*)b1)))->_count/*4*/);
  522. }/*]*/
  523. }
  524.  else if (r7has_suffix(((T7*)_str),r650make_suffix(C))) {
  525. /*[IRF3.6remove_suffix*/{T7* C1=((T7*)_str);
  526. T0* b1=r650make_suffix(C);
  527. r7remove_last(C1,(((T7*)((T7*)b1)))->_count/*4*/);
  528. }/*]*/
  529. }
  530. /*FI*//*IF*/if ((((T0*)ms14_364))==((void*)(r650system_name(C)))) {
  531. while (!(((((T7*)((T7*)_str)))->_count/*4*/)<=(4))) {
  532. r7remove_last(((T7*)_str),1);
  533. }
  534. }
  535. /*FI*/r650c_files_removing(C,_str);
  536. r7to_upper(((T7*)_str));
  537. r650c_files_removing(C,_str);
  538. r7to_lower(((T7*)_str));
  539. r650c_files_removing(C,_str);
  540. }
  541. /*FI*/_arg=(_arg)+(1);
  542. }
  543. }
  544. /*No:CLEAN.help_suffix*/
  545. T0*oBC364help_file_name=NULL;
  546. T0*oBC1std_error=NULL;
  547. void r650add_directory(T650* C,T0* a1,T0* a2){
  548. /*IF*/if ((((T0*)ms17_364))==((void*)(r650system_name(C)))) {
  549. r7set_last(((T7*)a1),'\57');
  550. r7append(((T7*)a1),a2);
  551. r7set_last(((T7*)a1),'\57');
  552. }
  553.  else if ((((T0*)ms19_364))==((void*)(r650system_name(C)))) {
  554. r7set_last(((T7*)a1),'\134');
  555. r7append(((T7*)a1),a2);
  556. r7set_last(((T7*)a1),'\134');
  557. }
  558.  else if ((((T0*)ms15_364))==((void*)(r650system_name(C)))) {
  559. r7set_last(((T7*)a1),'\72');
  560. r7append(((T7*)a1),a2);
  561. r7set_last(((T7*)a1),'\72');
  562. }
  563.  else if ((((T0*)ms14_364))==((void*)(r650system_name(C)))) {
  564. r7set_last(((T7*)a1),'\134');
  565. r7append(((T7*)a1),a2);
  566. r7set_last(((T7*)a1),'\134');
  567. }
  568.  else if ((((T0*)ms16_364))==((void*)(r650system_name(C)))) {
  569. r7set_last(((T7*)a1),'\134');
  570. r7append(((T7*)a1),a2);
  571. r7set_last(((T7*)a1),'\134');
  572. }
  573.  else if ((((T0*)ms13_364))==((void*)(r650system_name(C)))) {
  574. r7set_last(((T7*)a1),'\57');
  575. r7append(((T7*)a1),a2);
  576. r7set_last(((T7*)a1),'\57');
  577. }
  578.  else if ((((T0*)ms18_364))==((void*)(r650system_name(C)))) {
  579. r7set_last(((T7*)a1),'\135');
  580. r7remove_last(((T7*)a1),1);
  581. r7set_last(((T7*)a1),'\56');
  582. r7append(((T7*)a1),a2);
  583. r7set_last(((T7*)a1),'\135');
  584. }
  585. /*FI*/}
  586. T0*oBC1std_output=NULL;
  587. T670 oBC1file_tools=0;
  588. /*No:CLEAN.windows_system*/
  589. T0*oBC364echo=NULL;
  590. T0* r650get_environment_variable(T650* C,T0* a1){
  591. T0* R=NULL;
  592. void* _p=0;
  593. _p=r7to_external(((T7*)a1));
  594. R=(NULL==(_p=getenv((char*)_p)))?NULL:((T0*)e2s((char*)_p));
  595. return R;
  596. }
  597. void r650print_help(T650* C,T0* a1){
  598. r7copy(((T7*)(oBC364help_file_name)),r650small_eiffel_directory(C));
  599. r650add_directory(C,oBC364help_file_name,((T0*)ms2_364));
  600. r7append(((T7*)(oBC364help_file_name)),a1);
  601. /*IF*/if (!(r7has_suffix(((T7*)(oBC364help_file_name)),((T0*)ms39_364)))) {
  602. r7append(((T7*)(oBC364help_file_name)),((T0*)ms39_364));
  603. }
  604. /*FI*//*IF*/if (!(r650file_exists(oBC364help_file_name))) {
  605. r306w_put_string(((T0*)ms3_364));
  606. r306w_put_string(oBC364help_file_name);
  607. r306w_put_string(((T0*)ms242_470));
  608. exit(1);
  609. }
  610. /*FI*/r830append_file(((T830*)(oBC1std_output)),oBC364help_file_name);
  611. }
  612. int fBC1command_arguments=0;
  613. T0*oBC1command_arguments=NULL;
  614. T0* r650command_arguments(void){
  615. if (fBC1command_arguments==0){
  616. T0* R=NULL;
  617. T0* _arg=NULL;
  618. int _i=0;
  619. fBC1command_arguments=1;
  620. _i=se_argc;
  621. {T927*n=malloc(sizeof(*n));
  622. *n=M927;
  623. r927make(n,_i);
  624. R=(T0*)n;
  625. }
  626. while (!((_i)==(0))) {
  627. _i=(_i)-(1);
  628. _arg=((T0*)e2s(se_argv[_i]));
  629. /*[IRF3.5put*/((((T927*)((T927*)R)))->_storage/*0*/)[_i]=(_arg);
  630. /*]*/
  631. }
  632. oBC1command_arguments=R;}
  633. return oBC1command_arguments;}
  634. T0*oBC364system_list=NULL;
  635. int fBC364system_name=0;
  636. T0*oBC364system_name=NULL;
  637. T0* r650system_name(T650* C){
  638. if (fBC364system_name==0){
  639. T0* R=NULL;
  640. int _i=0;
  641. fBC364system_name=1;
  642. r7copy(((T7*)(oBC364tmp_path)),r650small_eiffel_directory(C));
  643. /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\57')) {
  644. r7set_last(((T7*)(oBC364tmp_path)),'\57');
  645. r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
  646. r7extend(((T7*)(oBC364tmp_path)),'\57');
  647. r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
  648. r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
  649. }
  650. /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
  651. r7copy(((T7*)(oBC364tmp_path)),r650small_eiffel_directory(C));
  652. /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\134')) {
  653. r7set_last(((T7*)(oBC364tmp_path)),'\134');
  654. r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
  655. r7extend(((T7*)(oBC364tmp_path)),'\134');
  656. r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
  657. r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
  658. }
  659. /*FI*/}
  660. /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
  661. r7copy(((T7*)(oBC364tmp_path)),r650small_eiffel_directory(C));
  662. /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\72')) {
  663. r7set_last(((T7*)(oBC364tmp_path)),'\72');
  664. r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
  665. r7extend(((T7*)(oBC364tmp_path)),'\72');
  666. r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
  667. r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
  668. }
  669. /*FI*/}
  670. /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
  671. r7copy(((T7*)(oBC364tmp_path)),r650small_eiffel_directory(C));
  672. /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\135')) {
  673. r7set_last(((T7*)(oBC364tmp_path)),'\135');
  674. r7remove_last(((T7*)(oBC364tmp_path)),1);
  675. r7extend(((T7*)(oBC364tmp_path)),'\56');
  676. r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
  677. r7extend(((T7*)(oBC364tmp_path)),'\135');
  678. r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
  679. r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
  680. }
  681. /*FI*/}
  682. /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
  683. r7copy(((T7*)(oBC364tmp_path)),r650small_eiffel_directory(C));
  684. r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
  685. r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
  686. }
  687. /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
  688. r306w_put_string(((T0*)ms20_364));
  689. r306w_put_string(((T0*)ms127_470));
  690. r306w_put_string(((T0*)ms21_364));
  691. r306w_put_string(r650small_eiffel_directory(C));
  692. r306w_put_string(((T0*)ms242_470));
  693. exit(1);
  694. }
  695. /*FI*/r675read_line(((T675*)(oBC364tmp_file_read)));
  696. R=oBC762last_string;
  697. _i=r52index_of(((T52*)(oBC364system_list)),R);
  698. r675disconnect(((T675*)(oBC364tmp_file_read)));
  699. /*IF*/if ((_i)>((((T52*)((T52*)(oBC364system_list))))->_upper/*8*/)) {
  700. r306w_put_string(((T0*)ms22_364));
  701. r306w_put_string(oBC364tmp_path);
  702. r306w_put_string(((T0*)ms23_364));
  703. _i=1;
  704. while (!((_i)>((((T52*)((T52*)(oBC364system_list))))->_upper/*8*/))) {
  705. r306w_put_string(r52item(((T52*)(oBC364system_list)),_i));
  706. r306w_put_character('\n');
  707. _i=(_i)+(1);
  708. }
  709. }
  710. else {
  711. R=r52item(((T52*)(oBC364system_list)),_i);
  712. r306put_string(((T306*)(oBC364echo)),((T0*)ms24_364));
  713. r306put_string(((T306*)(oBC364echo)),R);
  714. r306put_string(((T306*)(oBC364echo)),((T0*)ms242_470));
  715. }
  716. /*FI*/oBC364system_name=R;}
  717. return oBC364system_name;}
  718. /*No:CLEAN.fz_b0*/
  719. T0*oBC364tmp_path=NULL;
  720. T0*oBC650tmp_string=NULL;
  721. /*No:CLEAN.fz_se*/
  722. /*No:CLEAN.os2_system*/
  723. void r650c_files_removing(T650* C,T0* a1){
  724. int _i=0;
  725. _i=1;
  726. while (!((_i)==(0))) {
  727. r7copy(((T7*)(oBC650tmp_string)),a1);
  728. r2append_in(_i,oBC650tmp_string);
  729. r7append(((T7*)(oBC650tmp_string)),((T0*)ms26_364));
  730. /*IF*/if (r650file_exists(oBC650tmp_string)) {
  731. r306file_removing(((T306*)(oBC364echo)),oBC650tmp_string);
  732. r7extend(((T7*)(oBC650tmp_string)),'\176');
  733. r306file_removing(((T306*)(oBC364echo)),oBC650tmp_string);
  734. r7remove_last(((T7*)(oBC650tmp_string)),1);
  735. /*[IRF3.6remove_suffix*/{T7* C1=((T7*)(oBC650tmp_string));
  736. T0* b1=((T0*)ms26_364);
  737. r7remove_last(C1,(((T7*)((T7*)b1)))->_count/*4*/);
  738. }/*]*/
  739. r7append(((T7*)(oBC650tmp_string)),r650o_suffix(C));
  740. r306file_removing(((T306*)(oBC364echo)),oBC650tmp_string);
  741. _i=(_i)+(1);
  742. }
  743. else {
  744. _i=0;
  745. }
  746. /*FI*/}
  747. r7copy(((T7*)(oBC650tmp_string)),a1);
  748. r7append(((T7*)(oBC650tmp_string)),((T0*)ms27_364));
  749. r306file_removing(((T306*)(oBC364echo)),oBC650tmp_string);
  750. r7copy(((T7*)(oBC650tmp_string)),a1);
  751. r7append(((T7*)(oBC650tmp_string)),((T0*)ms26_364));
  752. r306file_removing(((T306*)(oBC364echo)),oBC650tmp_string);
  753. r7copy(((T7*)(oBC650tmp_string)),a1);
  754. r7append(((T7*)(oBC650tmp_string)),r650make_suffix(C));
  755. r306file_removing(((T306*)(oBC364echo)),oBC650tmp_string);
  756. }
  757. int r650file_exists(T0* a1){
  758. int R=0;
  759. R=r670is_readable(a1);
  760. return R;
  761. }
  762. /*No:CLEAN.argument_count*/
  763. /*No:CLEAN.macintosh_system*/
  764. /*No:CLEAN.eiffel_suffix*/
  765. /*No:CLEAN.c_suffix*/
  766. T0* r650argument(int a1){
  767. T0* R=NULL;
  768. R=/*(IRF4.6item*/((((T927*)((T927*)(r650command_arguments()))))->_storage/*0*/)[a1]/*)*/;
  769. return R;
  770. }
  771. /*No:CLEAN.h_suffix*/
  772. int fBC364o_suffix=0;
  773. T0*oBC364o_suffix=NULL;
  774. T0* r650o_suffix(T650* C){
  775. if (fBC364o_suffix==0){
  776. T0* R=NULL;
  777. T0* _sn=NULL;
  778. fBC364o_suffix=1;
  779. _sn=r650system_name(C);
  780. {T7*n=malloc(sizeof(*n));
  781. *n=M7;
  782. r7make(n,4);
  783. R=(T0*)n;
  784. }
  785. r7copy(((T7*)(oBC364tmp_path)),r650small_eiffel_directory(C));
  786. r650add_directory(C,oBC364tmp_path,((T0*)ms126_470));
  787. r7append(((T7*)(oBC364tmp_path)),((T0*)ms28_364));
  788. r7append(((T7*)(oBC364tmp_path)),_sn);
  789. r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
  790. r675read_line_in(((T675*)(oBC364tmp_file_read)),R);
  791. r675disconnect(((T675*)(oBC364tmp_file_read)));
  792. oBC364o_suffix=R;}
  793. return oBC364o_suffix;}
  794. T0*oBC817tmp_file_read=NULL;
  795. /*No:STD_OUTPUT.make*/
  796. void r830append_file(T830* C,T0* a1){
  797. char _c=0;
  798. r675connect_to(((T675*)(oBC817tmp_file_read)),a1);
  799. r675read_character(((T675*)(oBC817tmp_file_read)));
  800. while (!(r675end_of_input(((T675*)(oBC817tmp_file_read))))) {
  801. _c=/*(IRF4.6last_character*/((char)((((T675*)((T675*)(oBC817tmp_file_read))))->_memory/*12*/))/*)*/;
  802. /*[IRF3.6put_character*/{T830* C1=C;
  803. char b1=_c;
  804. putc(b1,((FILE*)(stdout)));
  805. }/*]*/
  806. r675read_character(((T675*)(oBC817tmp_file_read)));
  807. }
  808. r675disconnect(((T675*)(oBC817tmp_file_read)));
  809. }
  810. /*No:STD_OUTPUT.flush*/
  811. void r830put_string(T830* C,T0* a1){
  812. int _i=0;
  813. _i=1;
  814. while (!((_i)>((((T7*)((T7*)a1)))->_count/*4*/))) {
  815. /*[IRF3.6put_character*/{T830* C1=C;
  816. char b1=/*(IRF4.6item*/((((T7*)((T7*)a1)))->_storage/*0*/)[(_i)-(1)]/*)*/;
  817. putc(b1,((FILE*)(stdout)));
  818. }/*]*/
  819. _i=(_i)+(1);
  820. }
  821. }
  822. /*No:STD_OUTPUT.put_character*/
  823. /*No:FILE_TOOLS.delete*/
  824. T0*oBC670std_fr1=NULL;
  825. int r670is_readable(T0* a1){
  826. int R=0;
  827. r675connect_to(((T675*)(oBC670std_fr1)),a1);
  828. R=/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC670std_fr1))))->_path/*4*/)!=(NULL)/*)*/;
  829. /*IF*/if (R) {
  830. r675disconnect(((T675*)(oBC670std_fr1)));
  831. }
  832. /*FI*/return R;
  833. }
  834. /*No:ECHO.make*/
  835. /*No:ECHO.verbose*/
  836. void r306file_removing(T306* C,T0* a1){
  837. /*IF*/if (r306file_exists(a1)) {
  838. r306put_string(C,((T0*)ms1_306));
  839. r306put_string(C,a1);
  840. r306put_string(C,((T0*)ms2_306));
  841. /*[IRF3.6remove_file*/{T0* b1=a1;
  842. /*[IRF3.6delete*/{T0* c1=b1;
  843. remove(((char*)r7to_external(((T7*)c1))));
  844. }/*]*/
  845. }/*]*/
  846. }
  847. /*FI*/}
  848. /*No:ECHO.remove_file*/
  849. void r306sfr_connect(T306* C,T0* a1,T0* a2){
  850. r306put_string(C,((T0*)ms3_306));
  851. r306put_string(C,a2);
  852. r306put_string(C,((T0*)ms4_306));
  853. r675connect_to(((T675*)a1),a2);
  854. }
  855. void r306put_string(T306* C,T0* a1){
  856. /*IF*/if ((((T306*)C))->_verbose/*0*/) {
  857. r830put_string(((T830*)(oBC1std_output)),a1);
  858. /*[IRF3.6flush*/{T830* C1=((T830*)(oBC1std_output));
  859. fflush(stdout);
  860. }/*]*/
  861. }
  862. /*FI*/}
  863. void r306w_put_string(T0* a1){
  864. r441put_string(((T441*)(oBC1std_error)),a1);
  865. /*[IRF3.6flush*/{T441* C1=((T441*)(oBC1std_error));
  866. fflush(stderr);
  867. }/*]*/
  868. }
  869. int r306file_exists(T0* a1){
  870. int R=0;
  871. R=r670is_readable(a1);
  872. return R;
  873. }
  874. void r306w_put_character(char a1){
  875. /*[IRF3.6put_character*/{T441* C1=((T441*)(oBC1std_error));
  876. char b1=a1;
  877. putc(b1,((FILE*)(stderr)));
  878. }/*]*/
  879. /*[IRF3.6flush*/{T441* C1=((T441*)(oBC1std_error));
  880. fflush(stderr);
  881. }/*]*/
  882. }
  883. /*No:ECHO.set_verbose*/
  884. /*No:BOOLEAN_REF.item*/
  885. int se_argc;
  886. char**se_argv;
  887. int main(int argc,char*argv[]){
  888. se_initialize();
  889. {
  890. T650*n=malloc(1);
  891. se_argc=argc; se_argv=argv;
  892. #ifdef SIGINT
  893. signal(SIGINT,sigrsp);
  894. #endif
  895. #ifdef SIGQUIT
  896. signal(SIGQUIT,sigrsp);
  897. #endif
  898. #ifdef SIGTERM
  899. signal(SIGTERM,sigrsp);
  900. #endif
  901. #ifdef SIGBREAK
  902. signal(SIGBREAK,sigrsp);
  903. #endif
  904. #ifdef SIGKILL
  905. signal(SIGKILL,sigrsp);
  906. #endif
  907. se_msi1();
  908. se_msi2();
  909. {int R=0;
  910. oBC1file_tools=R;}/*PCO*/
  911. {T0* R=NULL;
  912. {T830*n=malloc(1);
  913. /*[IRF3.1make*//*]*/
  914. R=(T0*)n;
  915. }
  916. oBC1std_output=R;}/*PCO*/
  917. {T0* R=NULL;
  918. {T441*n=malloc(1);
  919. /*[IRF3.1make*//*]*/
  920. R=(T0*)n;
  921. }
  922. oBC1std_error=R;}/*PCO*/
  923. {T0* R=NULL;
  924. {T675*n=malloc(sizeof(*n));
  925. *n=M675;
  926. /*[IRF3.1make*//*]*/
  927. R=(T0*)n;
  928. }
  929. oBC670std_fr1=R;}/*PCO*/
  930. {T0* R=NULL;
  931. {T675*n=malloc(sizeof(*n));
  932. *n=M675;
  933. /*[IRF3.1make*//*]*/
  934. R=(T0*)n;
  935. }
  936. oBC817tmp_file_read=R;}/*PCO*/
  937. {T0* R=NULL;
  938. {T7*n=malloc(sizeof(*n));
  939. *n=M7;
  940. r7make(n,256);
  941. R=(T0*)n;
  942. }
  943. oBC650tmp_string=R;}/*PCO*/
  944. {T0* R=NULL;
  945. {T7*n=malloc(sizeof(*n));
  946. *n=M7;
  947. r7make(n,256);
  948. R=(T0*)n;
  949. }
  950. oBC364tmp_path=R;}/*PCO*/
  951. {T0* R=NULL;
  952. R=se_ma52(7,((T0*)ms13_364),((T0*)ms14_364),((T0*)ms15_364),((T0*)ms16_364),((T0*)ms17_364),((T0*)ms18_364),((T0*)ms19_364));
  953. oBC364system_list=R;}/*PCO*/
  954. {T0* R=NULL;
  955. {T306*n=malloc(sizeof(*n));
  956. *n=M306;
  957. /*[IRF3.1make*//*]*/
  958. R=(T0*)n;
  959. }
  960. oBC364echo=R;}/*PCO*/
  961. {T0* R=NULL;
  962. {T7*n=malloc(sizeof(*n));
  963. *n=M7;
  964. r7make(n,256);
  965. R=(T0*)n;
  966. }
  967. oBC364help_file_name=R;}/*PCO*/
  968. {T0* R=NULL;
  969. {T675*n=malloc(sizeof(*n));
  970. *n=M675;
  971. /*[IRF3.1make*//*]*/
  972. R=(T0*)n;
  973. }
  974. oBC364tmp_file_read=R;}/*PCO*/
  975. {T0* R=NULL;
  976. {T7*n=malloc(sizeof(*n));
  977. *n=M7;
  978. r7make(n,256);
  979. R=(T0*)n;
  980. }
  981. oBC762last_string=R;}/*PCO*/
  982. r650make(n);
  983. exit(0);}}
  984. T7*ms1_650;
  985. T7*ms2_650;
  986. T7*ms2_364;
  987. T7*ms39_364;
  988. T7*ms3_364;
  989. T7*ms25_364;
  990. T7*ms28_364;
  991. T7*ms27_364;
  992. T7*ms26_364;
  993. T7*ms37_364;
  994. T7*ms36_364;
  995. T7*ms35_364;
  996. T7*ms34_364;
  997. T7*ms33_364;
  998. T7*ms126_470;
  999. T7*ms3_306;
  1000. T7*ms4_306;
  1001. T7*ms20_364;
  1002. T7*ms127_470;
  1003. T7*ms21_364;
  1004. T7*ms121_470;
  1005. T7*ms1_364;
  1006. T7*ms24_364;
  1007. T7*ms242_470;
  1008. T7*ms22_364;
  1009. T7*ms23_364;
  1010. T7*ms13_364;
  1011. T7*ms15_364;
  1012. T7*ms16_364;
  1013. T7*ms17_364;
  1014. T7*ms18_364;
  1015. T7*ms19_364;
  1016. T7*ms14_364;
  1017. T7*ms1_306;
  1018. T7*ms2_306;
  1019. T7*ms3_650;
  1020. void se_msi1(void){
  1021. ms1_650=se_ms(28,"Bad use of command `clean\'.\n");
  1022. ms2_650=se_ms(5,"clean");
  1023. ms2_364=se_ms(3,"man");
  1024. ms39_364=se_ms(4,".txt");
  1025. ms3_364=se_ms(26,"Unable to find help file \"");
  1026. ms25_364=se_ms(2,".e");
  1027. ms28_364=se_ms(9,"o_suffix.");
  1028. ms27_364=se_ms(2,".h");
  1029. ms26_364=se_ms(2,".c");
  1030. ms37_364=se_ms(5,".make");
  1031. ms36_364=se_ms(4,".CMD");
  1032. ms35_364=se_ms(4,".COM");
  1033. ms34_364=se_ms(4,".bat");
  1034. ms33_364=se_ms(4,".BAT");
  1035. ms126_470=se_ms(3,"sys");
  1036. ms3_306=se_ms(18,"Try to read file \"");
  1037. ms4_306=se_ms(3,"\".\n");
  1038. ms20_364=se_ms(21,"Unable to find file\n\"");
  1039. ms127_470=se_ms(9,"system.se");
  1040. ms21_364=se_ms(14,"\" using path \"");
  1041. }
  1042. void se_msi2(void){
  1043. ms121_470=se_ms(11,"SmallEiffel");
  1044. ms1_364=se_ms(31,"/usr/local/logiciel/SmallEiffel");
  1045. ms24_364=se_ms(11,"System is \"");
  1046. ms242_470=se_ms(3,"\".\n");
  1047. ms22_364=se_ms(29,"Unknown system name in file\n\"");
  1048. ms23_364=se_ms(36,"\".\nCurrently handled system names :\n");
  1049. ms13_364=se_ms(5,"Amiga");
  1050. ms15_364=se_ms(9,"Macintosh");
  1051. ms16_364=se_ms(3,"OS2");
  1052. ms17_364=se_ms(4,"UNIX");
  1053. ms18_364=se_ms(3,"VMS");
  1054. ms19_364=se_ms(7,"Windows");
  1055. ms14_364=se_ms(3,"DOS");
  1056. ms1_306=se_ms(10,"Removing \"");
  1057. ms2_306=se_ms(2,"\"\n");
  1058. ms3_650=se_ms(8,"-verbose");
  1059. }
  1060. T7*se_ms(int c,char*e){
  1061. T7*s=malloc(sizeof(T7));
  1062. s->_count=c;
  1063. s->_capacity=c+1;
  1064. s->_storage=malloc(c+1);
  1065. memcpy(s->_storage,e,c);
  1066. return s;}
  1067. T7*e2s(char*e){
  1068. return se_ms(strlen(e),e);}
  1069. char*s2e(T7*s){
  1070. char*e=malloc(1+s->_count);
  1071. memcpy(e,s->_storage,s->_count);
  1072. e[s->_count]='\0';
  1073. return e;}
  1074. void*se_ma52(int argc,...){
  1075. T52*m;
  1076. va_list pa;
  1077. T0**s;
  1078. m=malloc(sizeof(*m));
  1079. *m=M52;
  1080. if(argc){
  1081. s=malloc(argc*sizeof(*s));
  1082. m->_storage=s;
  1083. m->_capacity=argc;
  1084. m->_lower=1;
  1085. m->_upper=argc;
  1086. va_start(pa,argc);
  1087. while(argc--){
  1088. *(s++)=((void*)(va_arg(pa,char*)));
  1089. }
  1090. va_end(pa);
  1091. }
  1092. return m;}
  1093. void rsp(void){
  1094. printf("Eiffel program crash at run time.\n");
  1095. printf("No trace when using option \"-boost\"\n");}
  1096. void sigrsp(int sig){
  1097. printf("Received signal %d (man signal).\n",sig);
  1098. rsp();
  1099. exit(1);}
  1100. void se_initialize(void){
  1101. }
  1102.  
  1103.